package com.app.h5.util;

import org.jetbrains.annotations.NotNull;

import java.io.IOException;

import okhttp3.Interceptor;
import okhttp3.Request;
import okhttp3.Response;
/* 常见的媒体格式类型如下：

    text/html ： HTML格式
    text/plain ：纯文本格式
    text/xml ：  XML格式
    image/gif ：gif图片格式
    image/jpeg ：jpg图片格式
    image/png：png图片格式

   以application开头的媒体格式类型：

   application/xhtml+xml ：XHTML格式
   application/xml     ： XML数据格式
   application/atom+xml  ：Atom XML聚合格式
   application/json    ： JSON数据格式
   application/pdf       ：pdf格式
   application/msword  ： Word文档格式
   application/octet-stream ： 二进制流数据（如常见的文件下载）
   application/x-www-form-urlencoded ： <form encType=””>中默认的encType，form表单数据被编码为key/value格式发送到服务器（表单默认的提交数据的格式）

   另外一种常见的媒体格式是上传文件之时使用的：

    multipart/form-data ： 需要在表单中进行文件上传时，就需要使用该格式*/

/**
 * ok拦截器:
 * 1.统一添加header;
 * 2.过率图片加载;
 * 3.判断登录态.
 * ProjectName  XSMNewProject
 * PackageName  com.datouma.newproject.http
 *
 * @author neo
 * Date         2021/9/14.
 */

public class NetworkInterceptor implements Interceptor {

    @NotNull
    @Override
    public Response intercept(@NotNull Chain chain) throws IOException {
        Request request = buildRequest(chain);
        return chain.proceed(request);
    }

    @NotNull
    private Request buildRequest(@NotNull Chain chain) {
        return chain
                .request()
                .newBuilder()
                .addHeader("device", "5d1684f6036e2002")
                .addHeader("Host", "inl.appsusa.net")
                .addHeader("sysId", "2")
                .addHeader("groupId", "255")
                .addHeader("brand", "Huawei")
                .addHeader("deviceName", "P30 Pro")
                .addHeader("packageName", "com.ac.ac_app_flutter")
                .addHeader("terminals", "3")
                .build();
    }
}
